package cn.krui.project;

import java.util.ArrayList;
import java.util.List;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import cn.krui.helper.filter.ITokenFilterSetting;

/**
 * @author zc
 */
@Component
public class TokenFilterSettingSystem implements ITokenFilterSetting {

    @Value("${com.kr.web.common.staticaccesspath}")
    private String staticAccessPath;
    
    @Override
    public List<String> EXCEPTION_URI() {
        List<String> list = new ArrayList<>();
        list.add("/");
        list.add(staticAccessPath.replace("**", "*"));
        list.add("/favicon.ico");
        list.add("*/system/actuator/*");
        list.add("*/system/kaptcha/captchaImage");
        list.add("*/system/syslogin/login");
        list.add("*/swagger-ui.html*");
        list.add("*/v2/api-docs");
        list.add("*/swagger-resources*");
        list.add("*/webjars/*");
        list.add("*/system/system_check/*");
        return list;
    }

    @Override
    public List<String> EXCEPTION_TOKEN_URI() {
        List<String> list = new ArrayList<>();
        list.add("*/system/syslogin/info");
        list.add("*/system/syslogin/logout");
        list.add("*/system/syslogin/repwd");
        list.add("*/system/sysmenu/UserMenuPers");
        list.add("*/system/sysmenu/getSysMenuList");
        list.add("*/system/sysmenu/UserMenuTree");
        list.add("*/system/tools/fileUp");
        list.add("*/system/tools/fileUpInfo");
        return list;
    }
    
}